package main

import "fmt"

/*


测试：
输入参数的时候一个连字符或者两个连字符都可以。
1. -cp com/cj Java.lang.String a b
2. -classpath com/cj Java.lang.String a b
3. -help
4. -version

*/
func main() {
	fmt.Print("-----start----------\n")
	cmd := parseCmd()
	if cmd.versionFlag {
		fmt.Println("虚拟机版本为1.0")
	} else if cmd.helpFlag || cmd.class == "" { //在这一章中，不输入类名当成命令输入错误，但Cmd类的解析是支持不输入class参数的。
		fmt.Println("请按下面的提示输入命名，注意：必须提供启动类的全称")
		printUsage()
	} else {
		startJVM(cmd)
	}
}

func startJVM(cmd *Cmd) {
	fmt.Printf("解析命令参数后的结果：classpath:%s class:%s args:%v\n", cmd.cpOption, cmd.class, cmd.args)
}
